{"id":21707802,"url":"https://github.com/flightaware/tcl-apns","last_synced_at":"2026-01-03T18:40:49.503Z","repository":{"id":1290005,"uuid":"1230614","full_name":"flightaware/tcl-apns","owner":"flightaware","description":"Tcl methods for interfacing with the Apple Push Notification Service (APNS) for iPhone/iOS alerts","archived":false,"fork":false,"pushed_at":"2011-01-12T07:15:36.000Z","size":104,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-04-18T10:34:09.775Z","etag":null,"topics":["apple-push-notifications","tcl"],"latest_commit_sha":null,"homepage":"","language":"Tcl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flightaware.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-01-07T17:02:09.000Z","updated_at":"2023-04-18T10:34:09.775Z","dependencies_parsed_at":"2022-08-16T12:55:24.692Z","dependency_job_id":null,"html_url":"https://github.com/flightaware/tcl-apns","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Ftcl-apns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Ftcl-apns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Ftcl-apns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Ftcl-apns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flightaware","download_url":"https://codeload.github.com/flightaware/tcl-apns/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244657070,"owners_count":20488713,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-push-notifications","tcl"],"created_at":"2024-11-25T22:19:19.118Z","updated_at":"2026-01-03T18:40:49.477Z","avatar_url":"https://github.com/flightaware.png","language":"Tcl","funding_links":[],"categories":[],"sub_categories":[],"readme":"This Tcl code interfaces with the Apple Push Notification Service (APNS)\nto allow you to send iPhone/iOS alerts.\n\nWe have been using this code in a production environment since May 2010.\nIt is currently delivering nearly 20k successful push alerts to our users\nper day (with a peak of nearly 400 alerts per minute) and we expect\nthat it should continue to be able to scale to much higher levels.\n\nThis code has been developed on FreeBSD 8.0 with Tcl 8.5.9, but the\ncode does not have any unusual OS dependencies and should work on\nother Tcl-supported environments.\n\nYour iPhone application will need to be responsible for communicating\nthe deviceToken to your backend in advance.  The basic syntax of the\ntransmission will look like this:\n\n         set json \"{\\\"aps\\\": \\\"hello message $i\\\"}\"\n         set deviceToken \"123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF\" \n         send_apns $deviceToken $json\n\nThe above send_apns is a blocking call, but event driven handlers are\nused in the background to perform all socket connecting, reading,\nwriting, and timeouts.  The network connection is kept persistent\nbetween calls to send_apns in order to maximize throughput.\n\nPeriodically, a separate proc \"connect_and_receive_apns_feedback\" can\nbe called to retrieve a list of deviceTokens that have bounced by the\nAPNS, and you can process the list to remove those dead devices from\nyour database.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflightaware%2Ftcl-apns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflightaware%2Ftcl-apns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflightaware%2Ftcl-apns/lists"}