Не может установить t tl документа Sync из клиента времени выполнения функции twilio

Мне нужно, чтобы мои документы Twilio Sync были удалены автоматически через несколько минут.

Я следовал за документацией для Runtime.getSync(),

который, кстати, кажется здесь представлен https://www.twilio.com/docs/runtime/client и расширен разделом "Документы" здесь https://www.twilio.com/docs/sync/api/documents используя примеры node.js,

это было так трудно собрать вместе.

но я не могу заставить работать параметр ttl

exports.handler = function(context, event, callback) {

    let sync = Runtime.getSync();
    let payload = {
        'greeting': "bonbon!"
    };
    let uniqueName = "test4";

    sync.documents.create({
        uniqueName: uniqueName,
        ttl: 5, //////////////////DOESN'T WORK!!!
        data: payload
    }).then(function(response) {
        console.log(response);
        callback(null, response);
    });
}

параметр ttl не оказывает никакого влияния на срок действия документа и даже не вызывает параметр документа "date_expires" (как видно из https://www.twilio.com/docs/sync/api/documents ecample), чтобы отразить правильное значение, фактически параметр date_expires даже не появляется в возвращенном объекте JSON:

{
_version: {
_domain: {
twilio: {
username: "xxxxxxxxxxxxxxxxxxxxxx",
password: "[Redacted]",
accountSid: "xxxxxxxxxxxxxxxxxxxxxx",
httpClient: { },
_sync: {
$ref: "$["_version"]["_domain"]"
}
},
baseUrl: "https://sync.twilio.com",
_v1: {
$ref: "$["_version"]"
}
},
_version: "v1"
},
sid: "xxxxxxxxxxxxxxxxxxxxxx",
uniqueName: "test4",
accountSid: "xxxxxxxxxxxxxxxxxxxxxx",
serviceSid: "xxxxxxxxxxxxxxxxxxxxxx",
url: "https://sync.twilio.com/v1/Services/xxxxxxxxxxxxxxxxxxxxxx/Documents/xxxxxxxxxxxxxxxxxxxxxx",
links: {
permissions: "https://sync.twilio.com/v1/Services/xxxxxxxxxxxxxxxxxxxxxx/Documents/xxxxxxxxxxxxxxxxxxxxxx/Permissions"
},
revision: "0",
data: {
greeting: "bonbon!"
},
dateCreated: "2018-09-19T03:30:24.000Z",
dateUpdated: "2018-09-19T03:30:24.000Z",
createdBy: "system",
_solution: {
serviceSid: "default",
sid: "xxxxxxxxxxxxxxxxxxxxxx"
}
}

есть кто-нибудь, у кого есть объяснение или обходной путь? заранее большое спасибо

1 ответ

Решение

Какую версию twilio вы используете?

https://www.twilio.com/console/runtime/functions/configure

Если оно меньше 3.6.10, ttl не поддерживается.

https://github.com/twilio/twilio-node/blob/master/CHANGES.md#2017-11-17-version-3100

[2017-11-17] Версия 3.10.0

Синхронизация

Добавить поддержку TTL для объектов синхронизации (прерывание изменений)

Самая новая версия - 3.21.0. Попытайся.

Другие вопросы по тегам