[BREAKGLASS] A private messenger for iOS. https://signal.org
Go to file
Jim Gustafson 60e619562e Update protocol buffer and behavior for multi-ring
Add type for Hangup messages, to reflect either normal hangup or hangup
because the call was accepted elsewhere.

Add type to Offer messages, which is used to indicate the type of call
that is being originated, either an audio call (the same as all legacy
calls) or a video call.

Add level for all messages, which is used to filter feature support,
either legacy or multi-ring behavior.

If the feature level for the Call Message is detected as legacy, AND if
the device is NOT the primary, drop the incoming Call Message.

Always mark outgoing Call Messages as multi-ring capable.

Adjust RingRTC interfaces to support:
- Call Media Type (default is always audioCall for now)
- The Hangup Type, which can be either normal (i.e. regular hangup) or
  accepted, replacing the removed Accepted message.

Hangups can now be sent out as a legacy messages or new messages. The
format is the same so that legacy clients will ignore 'new' hangups
sent to squelch ringing if they were actually the 'winner'.

Passing information for receivedOffer and receivedAnswer APIs to
indicate if the sender is a legacy sender or not. Legacy here means
someone using the protocol before the FeatureLevel was added to the
prototol for Call Messages.

Passing information to receivedOffer to indicate if the local device
is primary or not. As a result, if the device is receiving the offer
from a legacy device and is non-primary, the offer shall be ignored.
In this case, a new event is fired:

endedIgnoreCallsFromNonMultiringCallers

Co-authored-by: Michael Kirk <michael@signal.org>
2020-05-08 15:50:49 -07:00
.github Add lint action 2020-03-14 15:40:02 -07:00
fastlane Add jenkinsfile 2019-01-07 12:51:35 -07:00
NotificationServiceExtension "Bump build to 3.8.4.0." (Internal) 2020-05-08 16:09:47 -03:00
Pods@02874cdef1 Update Cocoapods. 2020-05-08 15:34:33 -03:00
Scripts Merge remote-tracking branch 'private/release/3.8.0' 2020-04-28 16:01:52 -03:00
SettingsBundle Update to the new GitHub organization name 2018-02-13 10:52:07 -05:00
Signal Update protocol buffer and behavior for multi-ring 2020-05-08 15:50:49 -07:00
Signal.xcodeproj Merge remote-tracking branch 'private/release/3.8.1' 2020-05-01 12:40:28 -03:00
Signal.xcworkspace fixup! Merge branch 'mkirk/pdf-share' 2020-01-14 09:24:06 -07:00
SignalMessaging Update protocol buffer and behavior for multi-ring 2020-05-08 15:50:49 -07:00
SignalServiceKit Update protocol buffer and behavior for multi-ring 2020-05-08 15:50:49 -07:00
SignalShareExtension Merge branch 'release/3.8.4' 2020-05-08 16:13:17 -03:00
ThirdParty Update to RingRTC v1.3.2. 2020-04-30 13:17:44 -03:00
.clang-format format objc. 2016-07-14 23:15:06 -07:00
.gitattributes Supporting diffing of localizablestrings. 2015-09-14 12:26:47 +02:00
.gitignore Migrate schema to add CDN key and number and add CDN2 constants 2020-04-14 08:53:59 -07:00
.gitmodules Convert to just using CocoaPods for dependencies 2020-01-02 12:03:57 -08:00
.ruby-version bump ruby version 2019-01-07 12:51:35 -07:00
BUILDING.md PR Feedback 2020-01-02 12:06:44 -08:00
CONTRIBUTING.md update translation location 2018-08-24 16:21:42 -06:00
Gemfile Fix readlink from cocoapods-binary 2020-01-02 12:03:57 -08:00
Gemfile.lock [Security] Bump json from 2.2.0 to 2.3.0 2020-04-23 10:17:23 -07:00
Jenkinsfile ci labels PRs with GH title 2019-01-11 10:53:22 -07:00
LICENSE Update license. 2017-04-11 18:09:16 -04:00
MAINTAINING.md PR Feedback 2020-01-02 12:06:44 -08:00
Makefile add pristine_dependencies task 2020-01-08 14:30:31 -07:00
Podfile Leverage session sender key indices when merging recipients. 2020-05-07 11:21:23 -03:00
Podfile.lock Update Cocoapods. 2020-05-08 15:34:33 -03:00
README.md Revert some of the bigger README changes for now, until we can do a deeper review 2019-06-11 17:14:04 -07:00
SignalServiceKit.podspec remove unnused subset of AFNetworking 2020-02-28 14:44:56 -06:00

Signal iOS

Signal is a free, open source, messaging app for simple private communication with friends.

Available on the App Store

Also available on Android and Desktop.

Questions?

For troubleshooting and questions, please visit our support center or unofficial community forum.

Contributing Bug Reports

We use GitHub for bug tracking. Please search existing issues and create a new one if the issue is not yet tracked. For Android users, please use the Signal for Android issue tracker.

Contributing Translations

Help us translate Signal! The translation effort happens on Transifex.

Contributing Code

Instructions on how to setup your development environment and build Signal-iOS can be found in BUILDING.md. Other useful instructions for development can be found in the Development Guide wiki page. We also recommend reading the contribution guidelines.

Contributing Ideas

Have something you want to say about Signal Foundation projects or want to be part of the conversation? Get involved in the community forum.

Cryptography Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

License

Licensed under GPLv3

Copyright 2014-2019 Open Whisper Systems

Apple and the Apple logo are trademarks of Apple Inc., registered in the U.S. and other countries. App Store is a service mark of Apple Inc., registered in the U.S. and other countries.