mirror of
https://github.com/sky-systems/sky_phone.git
synced 2026-08-29 04:01:32 +00:00
5f8c835685
This reverts commit edd9677f43.
101 lines
4.8 KiB
Lua
101 lines
4.8 KiB
Lua
local callback_groups = {
|
|
account = [[login register logout devices remove-device]],
|
|
banking = [[overview transfer]],
|
|
billing = [[overview list detail markRead pay dispute]],
|
|
calendar = [[list create update delete]],
|
|
calls = [[recents dial answer set-speaker set-muted decline hangup block]],
|
|
citywarn = [[bootstrap publish update resolve]],
|
|
companies = [[
|
|
list get my-requests get-request work-context work-queue list-members
|
|
create-request cancel-request send-message claim-request assign-request update-request-status
|
|
update-availability update-profile update-hours update-services publish-announcement
|
|
set-call-availability call-customer dial-service-line
|
|
]],
|
|
contacts = [[list save delete favorite]],
|
|
crewlink = [[
|
|
bootstrap login register logout update-profile create-group update-group delete-group set-active
|
|
join-code rotate-code nearby invite-nearby respond-invite update-member transfer-owner
|
|
remove-member leave create-ping remove-ping
|
|
]],
|
|
crypto = [[
|
|
bootstrap register login logout quote execute deposit withdraw update-profile recipient transfer
|
|
]],
|
|
["custom-app"] = [[storage:get storage:set]],
|
|
darkchat = [[
|
|
bootstrap create-profile delete-profile update-profile start thread send media react
|
|
message-action update-conversation add-contact remove-contact block report clear
|
|
]],
|
|
device = [[save notification-open factory-reset]],
|
|
easyshare = [[bootstrap own-contact set-visibility request respond cancel]],
|
|
feather = [[
|
|
bootstrap create-profile update-profile feed explore network create-post react follow connections
|
|
remove-connection profile bookmarks thread activities mark-activities delete block report
|
|
]],
|
|
flare = [[bootstrap delete-profile save-profile set-discovery swipe rewind unmatch thread send]],
|
|
fliptok = [[
|
|
register login logout bootstrap feed video discover music-metadata publish react follow
|
|
comments comment comment-react view share profile connections update-profile activities
|
|
mark-activities report admin-reports admin-resolve-report block delete
|
|
]],
|
|
gallery = [[list counts favorite]],
|
|
mail = [[
|
|
register login logout counts mailboxes create-mailbox delete-mailbox list get get-draft
|
|
save-draft delete-draft delete-many send set-read move trash restore delete-forever empty-trash
|
|
]],
|
|
map = [[markers create-marker delete-marker]],
|
|
marketplace = [[
|
|
list profile auth profile-save get list-own create update set-status favorite counts
|
|
list-inquiries get-inquiry send-message make-offer respond-offer report block
|
|
]],
|
|
media = [[config import:sources import:list import:commit import:url]],
|
|
memos = [[list update delete]],
|
|
messages = [[conversations thread send media delete gifs]],
|
|
music = [[
|
|
bootstrap add-youtube remove-youtube create-playlist rename-playlist delete-playlist
|
|
add-to-playlist remove-from-playlist
|
|
]],
|
|
notes = [[list create update delete]],
|
|
notifications = [[save]],
|
|
pages = [[
|
|
list get profile profile-save list-own create share-citymarkt react delete
|
|
]],
|
|
picstagram = [[
|
|
register login logout bootstrap feed post explore search saved profile connections update-profile
|
|
publish-post update-post set-post-status react follow respond-follow comments comment comment-react
|
|
remove-comment publish-story stories view-story story-viewers remove-story activities mark-activities
|
|
block report admin-reports admin-resolve-report
|
|
]],
|
|
security = [[unlock set-passcode change-passcode disable-passcode]],
|
|
sim = [[insert eject]],
|
|
["weazel-news"] = [[context list get manage-list create update delete]],
|
|
}
|
|
|
|
for namespace, endpoints in pairs(callback_groups) do
|
|
for endpoint in endpoints:gmatch("%S+") do
|
|
local callback_name = namespace .. ":" .. endpoint
|
|
RegisterNUICallback(callback_name, function(data, cb)
|
|
if type(data) ~= "table" then
|
|
cb({ success = false, error = "invalid_request" })
|
|
return
|
|
end
|
|
|
|
local result = Bridge.Callbacks.Trigger("sky_phone:" .. callback_name, data)
|
|
if callback_name:match("^media:import:") and (not result or not result.success) then
|
|
Bridge.Debug(
|
|
"warn",
|
|
"[sky_phone] NUI callback '%s' failed: %s.",
|
|
callback_name,
|
|
tostring(result and result.error or "no server response"),
|
|
{ always = true }
|
|
)
|
|
end
|
|
if type(result) == "table" then
|
|
cb(result)
|
|
return
|
|
end
|
|
|
|
cb({ success = false, error = "request_failed" })
|
|
end)
|
|
end
|
|
end
|