File size: 1,782 Bytes
acbe906
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
from dotenv import load_dotenv
import requests
import os
load_dotenv()

# Access the variables
api_key = os.getenv("DEVICE_ID")


def parse_response(data):

    dialog = []
    for i in range(len(data['memories'])):
        for segment in data['memories'][i]['transcript_segments']:
            speaker = segment['speaker']
            start_time = segment['start']
            end_time = segment['end']
              # Fallback for unexpected speaker IDs
            dialog.append(f"**{speaker}**: {segment['text']}")

    # Join dialog lines into a markdown string
    dialog_text = "\n\n".join(dialog)

    return dialog_text

 

def fetch_memories(url, headers, cursor=None):
    # Update URL with cursor if provided
    if cursor:
        url = f"{url}&cursor={cursor}"
    
    response = requests.get(url, headers=headers)
    
    if response.status_code == 200:
        return response.json()
    else:
        print(f"Error: {response.status_code} - {response.text}")
        return None

# Initial API setup



def get_dialog(date="2025-08-21"):
    url = "https://apis.getbuddi.ai/v1/dev/get_memories?date="+date
    headers = {
        "api-key": api_key
    }

    dialog=""
    # Fetch first batch
    data = fetch_memories(url, headers)
    if data:
        # print("First batch:", data)

        # Check for next_cursor and fetch subsequent batches
        while 'next_cursor' in data and data['next_cursor']:
            cursor = data['next_cursor']
            print(cursor)
            data = fetch_memories(url, headers, cursor)
            if data:
                dialog=dialog+parse_response(data)
                # print("Next batch:", data)
            else:
                break
        return(dialog)


if __name__ == "__main__":
    print(get_dialog())