- Қызметтік тіркелгіні қалай жасау керек
- Кілт файлын қалай жүктеу керек
- Күнтізбе идентификаторын қалай табу керек
- Жаңа күнтізбені қалай жасау керек
- Күнтізбе туралы ақпаратты қалай алу керек
- Қызметтік тіркелгінің күнтізбелер тізімін қалай алу керек
- Оқиғалармен қалай жұмыс істеу керек
Қызметтік тіркелгіні қалай жасау керек
Ол үшін Google қызметтерінде өз тіркелгіңізді жасауыңыз керек.
Мына сілтемеге өтіп, жаңа жоба жасаңыз:

Жобаға атау ойлап табыңыз:

«Create» түймесін басып, жоба жасалғанша аздап күтіңіз.
Бетті қайта жүктеп, содан кейін жаңа ғана жасалған жобаны басыңыз. Сол жақтағы өрісте қол жеткізу күйіңізді тексеріңіз — онда «Owner (1)» деп жазылуы керек:

Енді қызметтік тіркелгінің параметрлеріне өтіңіз:

Онда «Service accounts» бөлімін ашып, « + Create Service Account» түймесін басу керек:

Қызметтік тіркелгінің аты мен электрондық поштасын енгізіңіз:

Содан кейін Owner рөлін таңдаңыз:

«Done» түймесін басып, содан кейін таңдалған жобада «Manage keys» түймесін басыңыз. Содан кейін «Create new key» түймесін басыңыз:

JSON кілт түрін таңдап, «Create» түймесін басыңыз:

Кілтті жасағаннан кейін, ол автоматты түрде компьютеріңізге сақталады:

Содан кейін оны хостингке немесе Mavibot-қа жүктеп, алынған URL мекенжайын creds_path параметрінде бөлісу арқылы сұрау параметрлеріндегі сілтемені беру керек.
Енді біздің API-интеграцияларымызды да қосу керек. Ол үшін мына жерге өтіңіз:

Содан кейін APIs and services қызметтерін қосып, ашылған терезеде Google Calendar API іздеу керек:

Іздеу нәтижесін басып, содан кейін «Enable» түймесін басыңыз:

Бұл қадам қызметтік тіркелгіні жасауды аяқтайды.
Кілт файлын қалай жүктеу керек
Mavibot-тағы жобаға өтіп, алынған кілт файлын блокқа жүктеңіз, мысалы, келесідей:

«Save» түймесін басып, тегін тестілеу терезесіне өтіңіз:

Шарт ретінде орнатқан сөз тіркесін енгізіңіз (бұл жағдайда «123»). Жауап ретінде кілттері бар файлға сілтеме аласыз:

Блокты жоя алмайсыз, әйтпесе файл серверден жойылады және оны қайта қосуға тура келеді.
Блокты Not state түрінде жасауды ұмытпаңыз, сонда ол сізді мазаламайды.

Бұл сілтемені айнымалыда сақтауға немесе оны creds_path параметрінде сол күйінде беруге болады.
Күнтізбе идентификаторын қалай табу керек
Бар күнтізбенің идентификаторын оның параметрлеріндегі «Integrate calendar» бөлімінен табуға болады:

Жаңа күнтізбені қалай жасау керек
Жаңа күнтізбені екі жолдың бірімен жасауға болады: қолмен және функцияны пайдалану арқылы.
Қолмен күнтізбе жасау:

Жазбаларды қосу және бар күнтізбені (немесе қолмен жасалғанды) өңдеу үшін қызметтік тіркелгіге қол жеткізу құқығын беру керек. Ол үшін қажетті күнтізбенің параметрлеріне қызметтік тіркелгінің электрондық поштасын қосу жеткілікті:

Функцияны пайдаланып күнтізбе жасау
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұрау түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің қол жеткізу кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - create
name - күнтізбе атауы
description - күнтізбе сипаттамасы
Қосымша параметрлер:
time_zone - күнтізбенің уақыт белдеуі. IANA Time Zone идентификаторы. Әдепкі бойынша Europe/Moscow (GMT+3)
location - күнтізбенің еркін нысандағы мәтін ретіндегі географиялық орны
Сондай-ақ, басқа тіркелгіге, мысалы, негізгі тіркелгіңізге қол жеткізу құқығын бере аласыз:
owner_email - күнтізбенің иесі ретінде қосылатын тіркелгінің электрондық поштасы
Әдепкі бойынша, күнтізбе қызметтік тіркелгіде жасалады. Күнтізбені өз тіркелгіңізден көрнекі түрде өңдей алу үшін owner_email параметрінде электрондық поштаңызды беріңіз.
JSON-жауаптан сақталған мәндер
Сәтті орындалғаннан кейін функция келесі параметрлерді қайтарады, оларды сақтауға болады:
{'kind': 'calendar#calendar', 'etag': '"WgASl9FY_5zrEmCZvrt4Qlh6tGQ"', 'id': '[email protected]', 'summary': 'Calendar name’', 'timeZone': 'UTC'}
Жасалған күнтізбенің идентификаторын сақтайық: id -> calendar_id

Тестілеу үшін #{custom_answer} айнымалысын көрсетуге болады.
Егер электрондық пошта (owner_email) берілсе, сәтті сұраудан кейін электрондық пошта жәшігіңізге өтіп, күнтізбенің тіркелгіңізге қосылуын растау қажет:


Күнтізбе туралы ақпаратты қалай алу керек
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұрау түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің қол жеткізу кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - get_calendar;
calendar_id - таңдалған күнтізбенің идентификаторы
Сақталған мәндер
Сәтті орындалғаннан кейін функция келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{'kind': 'calendar#calendar', 'etag': '"6KN4OTLeoqGGu7Nr5uNIQgCGYsU"', 'id': '[email protected]', 'summary': 'Calendar name', 'timeZone': 'UTC'}
Қызметтік тіркелгінің күнтізбелер тізімін қалай алу керек
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұрау түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің қол жеткізу кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - calendars_list
Сақталған мәндер
Сәтті орындалғаннан кейін функция келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{
'kind': 'calendar#calendarList',
'etag': '"p32o8pm47rfqf20g"',
'nextSyncToken': 'CLCM2Ifb9PECEi5nc2hlZXRzQGdzaGVldHMtMjU0NzEzLmlhbS5nc2VydmljZWFjY291bnQuY29t',
'items': [
{
'kind': 'calendar#calendarListEntry',
'etag': '"1625235372775000"',
'id': '[email protected]',
'summary': 'AAAAAAAAaa',
'timeZone': 'Asia/Singapore',
'colorId': '17',
'backgroundColor': '#9a9cff',
'foregroundColor': '#000000',
'selected': True,
'accessRole': 'owner',
'defaultReminders': [
]
},
{
'kind': 'calendar#calendarListEntry',
'etag': '"1625235805096000"',
'id': '[email protected]',
'summary': 'AAAAAAAAaa',
'timeZone': 'Asia/Singapore',
'colorId': '21',
'backgroundColor': '#cca6ac',
'foregroundColor': '#000000',
'selected': True,
'accessRole': 'owner',
'defaultReminders': [
]
}
]
}
Оқиғалармен қалай жұмыс істеу керек
Оқиғаны жылдам қосу
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұрау түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің қол жеткізу кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - quick_add_event;
calendar_id - таңдалған күнтізбенің идентификаторы;
event_name - оқиғаның атауы
Параметрлердің мысалы:
{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "[email protected]", "command": "quick_add_event","event_name": "Incredible Event"}
Сақталған мәндер
Сәтті орындалғаннан кейін функция келесі параметрлерді қайтарады, оларды сақтауға болады. Кейінірек жасалған оқиғаны өңдей алу үшін оның идентификаторын сақтау ұсынылады: id -> event_id.
Функция жауабының мысалы:
{
'kind': 'calendar#event',
'etag': '"3253879667088000"',
'id': 'ljp7a3ocp8oorbov9u2cq221s0',
'status': 'confirmed',
'htmlLink': 'https://www.google.com/calendar/event?eid=bGpwN2Ezb2NwOG9vcmJvdjl1MmNxMjIxczAgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw',
'created': '2021-07-22T07:43:53.000Z',
'updated': '2021-07-22T07:43:53.544Z',
'creator': {'email': '[email protected]'},
'organizer': {'email': '[email protected]',
'displayName': 'Testov',
'self': True},
'start': {'dateTime': '2021-07-22T07:43:53Z', 'timeZone': 'UTC'},
'end': {'dateTime': '2021-07-22T08:43:53Z', 'timeZone': 'UTC'},
'iCalUID': '[email protected]',
'sequence': 0,
'reminders': {'useDefault': True},
'eventType': 'default'
}
Оқиғаны қалай қосу керек
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұрау түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің қол жеткізу кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - add_event
calendar_id - таңдалған күнтізбенің идентификаторы
event_name - оқиғаның атауы
Сондай-ақ, параметрлердің екі нұсқасының бірін орнату керек: күн НЕМЕСЕ күн мен уақыт.
Егер оқиға күні бойы өтетін болса, онда күндерді көрсету керек:
- start_date - оқиға басталатын күн DD.MM.YYYY форматында (мысалы, 23.07.2010)
- end_date - оқиға аяқталатын күн DD.MM.YYYY форматында (мысалы, 24.07.2010)
Егер оқиға белгіленген уақытта өтетін болса, онда күн мен уақытты көрсету керек:
- start_datetime - оқиға басталатын күн мен уақыт DD.MM.YYYY HH:MM форматында (мысалы, 23.07.2010 12:00)
- end_datetime - оқиға аяқталатын күн мен уақыт DD.MM.YYYY HH:MM форматында (мысалы, 23.07.2010 13:00)
- time_zone - оқиғаның уақыт белдеуі. IANA Time Zone идентификаторы. Әдепкі бойынша, Europe/Moscow (GMT+3)
Егер күнтізбе мен оқиғаның уақыт белдеулері әртүрлі болса, онда уақыты бар оқиға күнтізбенің уақыт белдеуіне қосылады.
Мысал:
Күнтізбе Europe/Kyiv +3 уақыт белдеуінде (tz), ал оқиға Europe/Berlin +2 уақыт белдеуімен қосылады. Оқиғаның 12pm (tz +2) уақыты күнтізбеге 1pm ретінде қосылады, себебі Киев уақыты бойынша 1pm +2 уақыт белдеуінде 12pm-ге сәйкес келеді.
Қосымша параметрлер:
event_description - оқиғаның сипаттамасы
location - оқиғаның географиялық орны еркін мәтін ретінде
email_minutes - қатысушылардың электрондық поштасына хабарландыру жіберу үшін оқиғаға дейінгі минуттар саны
popup_minutes - қатысушыларға қалқымалы терезе ретінде хабарландыру жіберу үшін оқиғаға дейінгі минуттар саны
Параметрлердің мысалы:
{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "[email protected]", "command": "add_event", "event_name": "The greatest event of all time", "start_datetime": "27.07.2021 12:00", "end_datetime": "27.07.2021 14:00"}
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Жасалған оқиғаны кейін өңдеу үшін оның идентификаторын сақтау ұсынылады:
id -> event_id
Функция жауабының мысалы:
{'kind': 'calendar#event', 'etag': '"3254057128970000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:22:53.109Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Kyiv'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Kyiv'}, 'iCalUID': '[email protected]', 'sequence': 0, 'attendees': [{'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default'}

Оқиғаны өңдеу
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Міндетті параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - update_event;
calendar_id - күнтізбенің идентификаторы;
event_id - өңдеу қажет оқиғаның идентификаторы
Жаңарту үшін қосымша параметрлер:
Бір немесе бірнеше параметрді беруге болады.
event_name - оқиғаның атауы
event_description - оқиғаның сипаттамасы
email_minutes - қатысушылардың электрондық поштасына хабарландыру жіберу үшін оқиғаға дейінгі минуттар саны
popup_minutes - қатысушыларға қалқымалы терезе ретінде хабарландыру жіберу үшін оқиғаға дейінгі минуттар саны
Егер оқиға бүкіл күнге созылса, онда күндерді көрсету қажет:
start_date - оқиғаның басталу күні DD.MM.YYYY форматында (мысалы, 23.07.2010)
end_date - оқиғаның аяқталу күні DD.MM.YYYY форматында (мысалы, 24.07.2010)
Егер оқиға белгіленген уақытта өтсе, онда күн мен уақытты көрсету қажет:
start_datetime - оқиғаның басталу күні мен уақыты DD.MM.YYYY HH:MM форматында (мысалы, 23.07.2010 12:00)
end_datetime - оқиғаның аяқталу күні мен уақыты DD.MM.YYYY HH:MM форматында (мысалы, 23.07.2010 13:00)
time_zone - оқиғаның уақыт белдеуі. IANA Time Zone идентификаторы. Әдепкі бойынша, Europe/Moscow (GMT+3)
Параметрлердің мысалы:
{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "[email protected]", "event_id": "j1lcpm4q2p9c0cv705alv3brug", "command": "update_event", "event_name": "Edited event", "start_datetime": "27.07.2021 12:00", "end_datetime": "27.07.2021 14:00","popup_minutes": "11","email_minutes": "22"}
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{"kind":"calendar#event","etag":""3276713558524000"","id":"j1lcpm4q2p9c0cv705alv3brug","status":"confirmed","htmlLink":"https://www.google.com/calendar/event?eid=ajFsY3BtNHEycDljMGN2NzA1YWx2M2JydWcgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw","created":"2021-12-01T10:40:11.000Z","updated":"2021-12-01T10:43:16.738Z","summary":"Amazing","creator":{"email":"[email protected]"},"organizer":{"email":"[email protected]","displayName":"Test","self":true},"start":{"dateTime":"2021-12-28T09:00:00Z","timeZone":"Europe/Moscow"},"end":{"dateTime":"2021-12-29T11:00:00Z","timeZone":"Europe/Moscow"},"iCalUID":"[email protected]","sequence":0,"reminders":{"useDefault":false,"overrides":[{"method":"email","minutes":22},{"method":"popup","minutes":12}]},"eventType":"default","update_status":"ok"}
Оқиғалар тізімін алу
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - get_event_list;
calendar_id - күнтізбенің идентификаторы
Егер қосымша параметрлерді бермесеңіз, нәтиже бүгінгі оқиғалардың тізімі болады
Қосымша параметрлер:
start_date - оқиғаларды іздеу басталатын күн DD.MM.YYYY форматында (23.07.2021)
end_date - оқиғаларды іздеу аяқталатын күн DD.MM.YYYY форматында (24.07.2021)
Параметрлердің мысалы:
23 шілдедегі оқиға табылады
{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "[email protected]", "command": "get_event_list", "start_date": "22.07.2021", "end_date": "23.07.2021"}
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Табылған оқиғалардың тізімін айнымалыда сақтауға болады:
items -> event_list
Функция жауабының мысалы:
{'kind': 'calendar#events', 'etag': '"p33odnesrinsv20g"', 'summary': 'Test', 'description': 'Test description', 'updated': '2021-07-23T12:13:05.686Z', 'timeZone': 'UTC', 'accessRole': 'owner', 'defaultReminders': [], 'items': [{'kind': 'calendar#event', 'etag': '"3254084771372000"', 'id': '6d8rocb9e2r21ue37jgsa0v06i', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=NmQ4cm9jYjllMnIyMXVlMzdqZ3NhMHYwNmkgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T12:11:13.000Z', 'updated': '2021-07-23T12:13:05.686Z', 'summary': 'DDDDDDDDD', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Testov', 'self': True}, 'start': {'date': '2021-07-20'}, 'end': {'date': '2021-07-21'}, 'transparency': 'transparent', 'iCalUID': '[email protected]', 'sequence': 0, 'reminders': {'useDefault': False}, 'eventType': 'default'}]}
Оқиғаларды басқа күнтізбеге қалай жылжытуға болады
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - move_event;
calendar_id - оқиға жылжытылатын күнтізбенің идентификаторы;
event_id - оқиғаның идентификаторы;
destination_calendar_id - оқиға жылжытылатын күнтізбенің идентификаторы;
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{'kind': 'calendar#event', 'etag': '"3253880350568000"', 'id': 'ljp7a3ocp8oorbov9u2cq221s0', 'status': 'cancelled', 'htmlLink': 'https://www.google.com/calendar/event?eid=bGpwN2Ezb2NwOG9vcmJvdjl1MmNxMjIxczAgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-22T07:43:53.000Z', 'updated': '2021-07-22T07:49:35.284Z', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Тестовый календарь'}, 'start': {'dateTime': '2021-07-22T07:43:53Z', 'timeZone': 'UTC'}, 'end': {'dateTime': '2021-07-22T08:43:53Z', 'timeZone': 'UTC'}, 'iCalUID': '[email protected]', 'sequence': 0, 'reminders': {'useDefault': True}, 'eventType': 'default'}
Оқиға туралы ақпаратты қалай алуға болады
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - get_event;
calendar_id - күнтізбенің идентификаторы;
event_id - оқиғаның идентификаторы
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{'kind': 'calendar#event', 'etag': '"3254067331414000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T11:12:55.553Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': '[email protected]', 'sequence': 0, 'attendees': [{'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default'}
Оқиғаны қалай жоюға болады
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - remove_event;
calendar_id - күнтізбенің идентификаторы;
event_id - жойғыңыз келетін оқиғаның идентификаторы
JSON-жауаптан сақталған мәндер:
Функция сәтті орындалғаннан кейін келесі параметрлерді қайтарады, оларды сақтауға болады.
Функция жауабының мысалы:
{'status': 'ok'}
Оқиғаға қатысушыны қалай қосуға болады
Функция URL мекенжайы: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - add_client;
calendar_id - күнтізбенің идентификаторы;
event_id - оқиғаның идентификаторы;
client_email - қосқыңыз келетін клиенттің электрондық поштасы
Қосымша параметрлер:
name - оқиғаның атауы;
comment - қатысушының пікірі
Параметрлердің мысалы:
{
"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json",
"calendar_id": "[email protected]",
"command": "add_client",
"event_id": "#{event_id}",
"client_email": "[email protected]",
"name": "John",
"comment": "I’ll be the first!"
}

JSON-жауаптан сақталған мәндер:
Функция әрқашан add_status күйін қайтарады. Ол үш мәннің бірін қабылдай алады:
ok - клиент қосылды
exist - клиент бұрыннан бар
error - қосу кезінде қате орын алды, содан кейін add_status-пен қатар error_message параметрі қате мәтінімен бірге болады
Сәтті жағдайдағы функция жауабының мысалы:
{'kind': 'calendar#event', 'etag': '"3254059247409000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:58:11.548Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': '[email protected]', 'sequence': 0, 'attendees': [{'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': '[email protected]', 'displayName': 'John2', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default', 'add_status': 'ok'}
Қатысушыны жою
Функция URL-і: https://store.salebot.ai/function/gcalendar
Сұраныс түрі: POST-json
Параметрлер:
creds_path - күнтізбе API-іне қызметтік тіркелгінің кіру кілтіне сілтеме (жоғарыдағы нұсқаулықты пайдаланып алынған);
command - remove_client;
calendar_id - күнтізбенің идентификаторы;
event_id - оқиғаның идентификаторы;
client_email - клиенттің электрондық поштасы
Параметрлердің мысалы:
{
"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json",
"calendar_id": "[email protected]",
"command": "remove_client",
"event_id": "#{event_id}",
"client_email": "[email protected]"
}
JSON-жауаптан сақталған мәндер:
Функция әрқашан remove_status күйін қайтарады. Ол үш мәннің бірін қабылдай алады:
1 - клиент сәтті жойылды
0 - клиент табылмады
error - жою кезінде қате орын алды, содан кейін remove_status-пен қатар error_message параметрі қате мәтінімен бірге болады
Сәтті жағдайдағы функция жауабы:
{'kind': 'calendar#event', 'etag': '"3254059247409000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:58:11.548Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': '[email protected]'}, 'organizer': {'email': '[email protected]', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': '[email protected]', 'sequence': 0, 'attendees': [{'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': '[email protected]', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': '[email protected]', 'displayName': 'John2', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default', 'remove_status': '1'}