iPhone hardware Mute button muting calls on multiple devices - iphone

I have a iOS application with SIP calling functionality integrated into CallIKit. Calls at the SIP server (Brekeke) are configured such that when a call is placed, it it sent to multiple phones/SIP devices. If the hardware mute button is pressed on one of the iPhones when the call is ringing, the ringer on all of the iPhones goes silent, not just the device where the button was pressed. I am NOT handling mute functionality in either the SIP or CallKit libraries. This is a Xamarin.Forms app, but I don't think that that makes any difference.
Is there a way with SIP (CounterPath library) or CallKit to address this, so that the only the device where the mute button was pressed has the ringer silenced?

Related

Push-To-Talk (PTT) App using Bluetooth HFP between iPhone and Bluetooth device

We found PTT apps on iPhone store. Now I would like to make one for myself.
For the past 1 week, I have been reading all the posts here regarding how to achieve this in coding. Lets say, we paired the BTdevice with iPhone (The BTdevice supports HFP and A2DP).
When we make a call pressing the button on BTdevice to iPhone, in our iPhone app,
we would like to recognize this EVENT or data in the app, then route the audio to iPhone-speaker.
When the button on the BTdevice released, user presses on-screen Button on iPhone to speak to BTdevice. The audio should be routed to BTdevice speaker.
Please through some procedure to achieve this in coding. Also libraries, classes and samples if available.
I understood this application can be achieved without MFi NDA with apple as HFP and A2DP are open in Apple ( I do understand the documentation available is limited).
I have found the following post EXACTLY addresses what I'm trying. Please take a look.
Intercom with Bluetooth headset
My experience has been, and as your link indicates, pairing with Bluetooth connects the microphone and speaker of one device as dedicated input/output pair for another device, so you can't mix and match a microphone on one end with a speaker on the other.

Interfacing a Bluetooth 2.0 device with iOS 7

I would like to ask you just some initial directions on how to send/receive (essentially receive) some data to/from a bluetooth 2.0 device. I'm trying CoreBluetooth Framework api with no success.
At the same time, I'm sure the connection can be done due to the fact the the device is already paired within iphone 5s and it works correctly (when an incoming call arrived, by pressing the button on the device the call is opened on the iphone).
Then in particular I need to programmatically intercept (on my app) the button pressing on the device. Could you send me some helps on that?
Thank you very much.

Airplay, Apple TV and Remote Events - is it only for streaming audio/video?

My iPad app presents a second UI to an Apple TV using the techniques discussed here - that is, be detecting and drawing to a UIScreen that represents the Apple TV:
http://developer.apple.com/library/IOs/#documentation/AudioVideo/Conceptual/AirPlayGuide/EnrichYourAppforAirPlay/EnrichYourAppforAirPlay.html
That document also discusses receiving Remote Control Events:
When AirPlay is in use, your media may be playing in another room from your host device. The AirPlay output device may have its own controls or respond to an Apple remote control. For the best user experience, your app should listen for and respond to remote events, such as play, pause, and fast-forward requests. Enabling remote events also allows your app to respond to the controls on headphones or earbuds that are plugged into the host device physically.
I have implemented the approach they describe to begin receiving remote control events, both in my app and in a simple test project, but I'm unable to detect any events. I do not receive events when I use a headphone plugged directly into an iPad and I do not receive events when I am sending a view to the Apple TV.
I am coming to the conclusion that, in fact, the only way you can intercept remote control events is if you are streaming media to the Apple TV, rather than simply present an app UI or mirroring.
This hypothesis seems to be supported by testing with the following steps using the MixerHost sample app (http://developer.apple.com/library/ios/#samplecode/MixerHost/Introduction/Intro.html):
Launch app on iPad with mirroring to Apple TV turned on.
Press "Play" button on remote - nothing happens.
Press "Play" button on the app UI and music starts playing through Apple TV.
Press "Play" button on remote to stop music, but the music does not stop.
Change the Airplay routing on the iPad so that it is no longer mirroring and just sending audio to the Apple TV. If you set a break point on "remoteControlReceivedWithEvent", and press the Play/Pause button the remote, you may catch the event. It is inconsistent - after receiving one or two events, it stops working.
Has anyone else had better luck with Airplay and Remote Control Events? Suggestions?
I've also been experimenting with a second screen UI via AirPlay Mirroring, and I can confirm that Apple remote events are not forwarded from the Apple TV to the iOS device during Mirroring.
In my own test application, I can receive headphone remote control events consistently and remote control events from the "Now Playing Controls" -- the media controls available in the bottom toolbar after a double-tap on the home button.
But no events ever show up from the Apple TV remote.
Just another item to add to the Apple / AirPlay wishlist...

How to determine whether iOS device is connected to desktop computer (and iTunes)

Is there way to determine whether an iOS device is connected to a desktop computer using USB cable and it is listed on iTunes.
Yes you can be notified of such events using The External Accessory framework.
"It is capable of sending notifications whenever a hardware accessory is connected or disconnected. Although it is capable, it does not do so automatically. Your application must specifically request that notifications be generated by calling the registerForLocalNotifications method of the EAAccessoryManager class. When an accessory is connected, authenticated, and ready to interact with your application, the framework sends an EAAccessoryDidConnectNotification notification. When an accessory is disconnected, it sends an EAAccessoryDidDisconnectNotification notification. You can register to receive these notifications using the default NSNotificationCenter, and both notifications include information about which accessory was affected."

iphone bluetooth getting an event or data from a device

I'm new to bluetooth. Is there a way through an API call or callback to get some event from a device that's connected via BT to the iphone? That is, without using the apple authentication chip?
A simple example would be an accessory that acts as a doorbell. My device would send "something" to the iphone to tell it someone pressed the doorbell button.
No - your accessory has to be MFi compliant