Bonjour, also known as zero-configuration networking, enables automatic discovery of devices and services on a local network using industry standard.

Posts under Bonjour tag

178 Posts

Post

Replies

Boosts

Views

Activity

WatchOS Network Framework connecting to Bonjour NWBrowser not working
Hello, I'm working on an Apple Watch/ iPhone/PC/Mac OS sport applications with different types of connectivity and i'm a bit stuck with the bellow issue. I'm trying to Resolve a Bonjour that is using NWBrowser on WatchOS 8.6 on Apple Watch SE with LTE and i encounter strange issues: First i'm setup a NWBrowser : NWBrowser(for: .bonjourWithTXTRecord(type: "_angry._tcp", domain: nil), using: parameters) Then, using : browser?.browseResultsChangedHandler = { [weak self] results, changes in Everything works well until here I'm gathering info form name and txt of the service found and ask the client if i want's a connection to service found . Using NWConnection to connecting to the found enpoint: NWConnection(to: endpoint, using: params) Here starts the issue In the stateUpdateHandler : connection?.stateUpdateHandler = { state in     switch state {     case .ready:      if let innerEndpoint = connection?.currentPath?.remoteEndpoint,        case .hostPort(let host, let port) = innerEndpoint { i'm checking the port and host where i'm getting the wrong informations, an IPV6 and a port that don't exists on the target server and a log in the console : 2022-05-22 15:54:33.146148+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_copy_synthesized_url Endpoint type is not an address or host, cannot synthesize URL 2022-05-22 15:54:33.319537+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319604+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319621+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319636+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319651+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501821+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501875+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501892+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501908+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501923+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching I tried this on an apple watch simulator and a couple of real iPhone devices and everything works well, i'm getting the good port and host and no console errors/warnings. PS: All this are done during a running HKWorkoutSession to ensure that the app is kept active during different networking operations. What i'm doing wrong since is working fine on iPhone and WatchOS Simulator? Thanks , Angry Software
4
0
2k
May ’22
Recommandations for device-to-device REST API
Hello, We currently have a Windows PC that hosts an REST API. We would like our iOS device to send requests to that API, while not being on the same immediate WiFi Network. We use another piece of hardware that provides us with an SDK, and they require Bonjour services, so I suppose it's a way to do it. In order to have it work, we need to connect to that device thru Bluetooth. What would be your recommendation?
1
0
1.2k
Apr ’22
Force HTTP calls go over WIFI network on Xamarin iOS
I have an app, developed in Xamarin Forms, which connects programmatically to a WIFI (with no internet access) exposed by an IoT device. This is the code I use to connect to the wifi network: NEHotspotConfiguration configuration = new NEHotspotConfiguration("ssid"); Device.BeginInvokeOnMainThread(() => { NEHotspotConfigurationManager.SharedManager.ApplyConfiguration(configuration, (NSError error) => { if (error != null) { if (error.LocalizedDescription == "already associated.") { // connected! CommunicateConnected(); } else { // not connected CommunicateNotConnected(); } } else { // connected! CommunicateNotConnected(); } }); }); Once the connection is successfully established the app performs some HTTP calls to the IP of the IoT device. Sometimes it happens that the HTTP calls go over the cellular data connection instead of WIFI connection (because the joined network has no internet connection?) and they fail. (Simply, I see that the 4G icon is still visible instead of the one representing the WIFI connection). The switch between mobile connection and WIFI connection, in these cases, happens after some minutes. Is there a way to force the HTTP calls to go over the just joined network?
3
0
1.8k
Apr ’22
Help understanding Bonjour service and installing on iPhone 12
My wife connects to Bonjour services on her android device through a wifi connection. I really don’t even know what it is, but the more read into it I’m slowly starting to understand. My issue is how do I get the Bonjour services to show up on my wifi scans so that I can connect to it? Or can I at all? I’m really noob at this stuff and I would love to understand. Is there an app I can get to gain access to it or does it require a more technical approach? Any help would be much appreciated.
2
0
2.4k
Apr ’22
Can I use the Multipeer connectivity framework to discover Bonjour services?
I know that the Multipeer Connectivity framework uses bonjour to discover local devices. Another app in our app suite uses a bonjour implementation for zeroconf. Can I use the Multipeer framework in a new application to discover the same services as the other apps in the suite without needing to modify the implementation in the other applications?
2
0
1k
Apr ’22
My app unexpectedly displays a local network privacy alert. Is it possible to explicitly deny without alert?
Hi team. Like the title, I'm figure out how to create my app so that I don't explicitly display local network privacy alerts. https://developer.apple.com/forums/thread/664116 This thread was a little helpful, but I couldn't find a clear way. Is there a way to automatically reject without explicitly displaying an alert, even if permission is required, such as plist settings? Thanks.
2
0
1.1k
Mar ’22
Building mDNSResponder for Windows 10
I would like to build mDNSResponder for Windows 10 so that we can distribute it with our Windows software. It's my understanding that the source code should be available here: https://opensource.apple.com/tarballs/mDNSResponder/ I've download the majority of the tarballs and found that none of the recent releases include the mDNSWindows" directory, which is referenced by the included Visual Studio solution. I've emailed opensource @ apple.com multiple times asking how I can obtain the missing sources but haven't received a response. Does anyone know why the Windows sources are missing from the tarballs or how to obtain them? Thanks, Michael
2
0
2.1k
Mar ’22
Bonjour for Windows installer
Hello, I have a question about below site. https://developer.apple.com/licensing-trademarks/bonjour/ In the Bonjour for Windows Bundling Agreement item Link to "Bonjour SDK for Windows" in No.1 is also linked to "Bonjour for Windows installer" in No.3 lists only "Bonjour SDK for Windows" in both. Are "Bonjour for Windows" and "Bonjour SDK for Windows" the same thing? Will I bundle "Bonjour SDK for Windows" instead of bundling "Bonjour for Windows installer" into a Windows application?
0
0
1.1k
Mar ’22
App Clips & Multipeer Connectivity
Hi! I have an app with Multipeer Connectivity setup and working properly. I now would like to add an app clip that is also able to connect to the main app target via Multipeer Connectivity. I've added the NSLocalNetworkUsageDescription as well as the NSBonjourServices to the app clip's info.plist, just like I did for the main app target, however when I run the app clip target, I get the following output at the Xcode console: [MCNearbyServiceBrowser] NSNetServiceBrowser did not search with error dict [{     NSNetServicesErrorCode = "-72008";     NSNetServicesErrorDomain = 10; }]. I'm now wondering if it is possible to have app clips leverage Multipeer Connectivity and, if so, what else I should do to resolve the issue. Thanks in advance!
3
0
1.5k
Mar ’22
Bonjour NWListener with changing domain name
Hi! I have to say I'm not experienced with network programming. Meanwhile, I'm happy my macOs app is doing mostly what it should with Network framework. What I noticed though is that, observing with DNS-SD, all other Bonjour Services on my system show the domain name "Felixs-iMac.local" whereas my app has something like c0d52654-4459-4373-a42d-778805c5107a.local with the string before .local changing on each run. I also noticed that the third party app that I connect my app to locally is not "remembering" my app after restarting. I can set manually "Remote Address" in that app to localhost or 127.0.0.1 and it reconnects next time. I wonder if this is related. How can I have my listener show up with a persitent host/domain name (not sure with terminology here..) so other apps can re-connect? Here's my code for the listener: // advertise Bonjour let udpOption = NWProtocolUDP.Options() let params = NWParameters(dtls: nil, udp: udpOption) if bonjour { params.includePeerToPeer = true } // create the listener listener = try! NWListener(using: params, on: 9001) // Bonjour service if bonjour { listener?.service = NWListener.Service(name: "ControlPilot", type: "_osc._udp", domain: nil, txtRecord: nil) }
2
0
1.4k
Feb ’22
How do I implement low-latency streaming between two local iOS devices?
Hello, I'd like to know whether Multipeer Connectivity (MPC) between two modern iOS devices can support cross-streaming of video content at low latency and relatively high resolution. I learned from Ghostbusters that crossing the streams is a bad idea, but I need this for my app so I'm going to ignore their sage advice. The application I have in mind involves one iOS device (A) live-streaming a feed to another iOS device  (B) running the same app. At the same time, B is live streaming its own feed to A. Both feeds don't need to be crystal clear, but there has to be low latency. The sample code for "Streaming an AR Experience" seems to contain some answers, as it's based on MPC (and ARKit), but my project isn't quite AR and the latency seems high. If MPC isn't suitable for this task (as my searches seem to indicate), is it possible to have one device set up a hotspot and link the two this way to achieve my cross-streaming ambitions? This seems like a more conservative method, assuming the hotspot and its client behave like they're wifi peers (not sure). I might start a new thread with just this question if that's more appropriate. A third idea that's not likely to work (for various reasons) is data transfer over a lightning-lightning or lightning-usb-c connection. If I've missed any other possible solutions to my cross-streaming conundrum, please let me know. I've been reading around this subject on this forum as well and would be hugely grateful if Eskimo would grace me with his wisdom.
6
0
3.8k
Feb ’22
Bonjour Service Discovery using SwiftNIO
I’m working on cross platform IoT project that requires data between devices on the same WiFi network. Initially, SwiftNIO looked ideal but there appears to be no obvious way to broadcast and listen for a Bonjour service using SwiftNIO. Have I missed any obvious solution or can anyone give any pointers as to a good approach to take? The platforms I’m using are Linux, iOS, and MacOS. Apple's Network framework isn't supported on Linux so I ruled this out. Ideally, an approach using Swift but happy to consider other approaches.
1
0
1.7k
Jan ’22
NetServiceBrowser service always fails on iPhone if we create build from xcode 12
NetServiceBrowser service always fails on iPhone if we create build from xcode 12. // We are using following line in to start searching for sevices available on network //         self.serviceBrowser.searchForServices(ofType: "_http._tcp.", inDomain: "local.")    It return following error dicitonary : ["NSNetServicesErrorCode": -72008, "NSNetServicesErrorDomain": 10] I did not find -72008 in error codes for NSNetServicesErrorDomain. It works as exepcted with previous vesions of Xcode. With Xcode 12 it works only on Simulator.
6
0
4.8k
Jan ’22
What would be a good way to send some request from an Apple Watch to a user's MacOS devices?
I made a simple personal-use/testing watchOS app with a button that toggles the "mic muted" state of a chat application for Mac while on the same network. I'm now thinking about adapting this into a proper, distributable app with a companion Mac app. This has me wondering: Is there some solution in Apple's various frameworks that would allow me to "broadcast" a request of this sort from my watch, either over the cloud or over the local network, to my companion Mac app without much in the way of user configuration? My current solution of "make an HTTP request to the hardcoded URI of a server running on my Mac" obviously isn't adaptable to different users or devices. I considered Bonjour but it seems to be partially/fully deprecated and probably wouldn't let the user ensure only their own devices are controlled. Perhaps Handoff or something on CloudKit could be used for this purpose?
1
0
790
Nov ’21
how is multicast/mDNS handled with IOS native IKEv2 VPN
In short, I’m curious if multicast traffic (in general) is forwarded via IOS’s native IKEv2 VPN tunnel? (“road warrior”)… More specifically, I'm trying to understand how that may influence mDNS/Bonjour traffic? NOTE: The way that I am framing this discussion is inherently IPv4/IGMP-centric, although if there's a substantive IPv6 difference, that clarification would also be appreciated. Is there an obvious scenario where mDNS/SSDP/Bonjour name resolution of "something.local” or just “something” (hostname without FQDN) would be resolved on the IP-network associated with the physical ethernet interface / broadcast IP subnet of the end user Apple IOS device (either wifi or LTE), rather than the virtual interface of the VPN? For instance, if the IOS/BSD kernel processing expressly treats multicast differently from unicast traffic, then it’s conceivable that an IKEv2 tunnel could be established, and yet multicast could be operated in a “split-tunnel” mode where (intentionally, or even due to a race condition) mDNS/bonjour traffic emanates locally, or possibly across all interfaces, regardless of preferred-default route? I was hoping you would respond to this query with an answer like: The IKEv2 (road Warrior) VPN ensures all traffic, including broadcast + multicast are exclusively routed to the remote VPN endpoint, with no leakage... or There are known scenarios where multicast or broadcast traffic can operate effectively as a split-tunnel to the unicast traffic routing over the IKEv2 VPN, and if mDNS name resolution is of concern to you, you should review ________ for how to use MDM services to control that. Thank you!
1
0
2k
Nov ’21
WatchOS Network Framework connecting to Bonjour NWBrowser not working
Hello, I'm working on an Apple Watch/ iPhone/PC/Mac OS sport applications with different types of connectivity and i'm a bit stuck with the bellow issue. I'm trying to Resolve a Bonjour that is using NWBrowser on WatchOS 8.6 on Apple Watch SE with LTE and i encounter strange issues: First i'm setup a NWBrowser : NWBrowser(for: .bonjourWithTXTRecord(type: "_angry._tcp", domain: nil), using: parameters) Then, using : browser?.browseResultsChangedHandler = { [weak self] results, changes in Everything works well until here I'm gathering info form name and txt of the service found and ask the client if i want's a connection to service found . Using NWConnection to connecting to the found enpoint: NWConnection(to: endpoint, using: params) Here starts the issue In the stateUpdateHandler : connection?.stateUpdateHandler = { state in     switch state {     case .ready:      if let innerEndpoint = connection?.currentPath?.remoteEndpoint,        case .hostPort(let host, let port) = innerEndpoint { i'm checking the port and host where i'm getting the wrong informations, an IPV6 and a port that don't exists on the target server and a log in the console : 2022-05-22 15:54:33.146148+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_copy_synthesized_url Endpoint type is not an address or host, cannot synthesize URL 2022-05-22 15:54:33.319537+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319604+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319621+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319636+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.319651+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501821+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501875+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501892+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501908+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching 2022-05-22 15:54:33.501923+0300 WatchKit Extension[956:609596] [] nw_endpoint_proxy_match_exception_to_endpoint Invalid proxy endpoint type 3 for matching I tried this on an apple watch simulator and a couple of real iPhone devices and everything works well, i'm getting the good port and host and no console errors/warnings. PS: All this are done during a running HKWorkoutSession to ensure that the app is kept active during different networking operations. What i'm doing wrong since is working fine on iPhone and WatchOS Simulator? Thanks , Angry Software
Replies
4
Boosts
0
Views
2k
Activity
May ’22
Resetting local network privacy doesn't work
I want to reset the local network privacy. so I try the method mentioned here ( https://developer.apple.com/forums/thread/663839 ). but it doesn't work on my iPhone 13 mini running iOS 15.4.1. anyone knows why?
Replies
4
Boosts
0
Views
2.2k
Activity
May ’22
Recommandations for device-to-device REST API
Hello, We currently have a Windows PC that hosts an REST API. We would like our iOS device to send requests to that API, while not being on the same immediate WiFi Network. We use another piece of hardware that provides us with an SDK, and they require Bonjour services, so I suppose it's a way to do it. In order to have it work, we need to connect to that device thru Bluetooth. What would be your recommendation?
Replies
1
Boosts
0
Views
1.2k
Activity
Apr ’22
Force HTTP calls go over WIFI network on Xamarin iOS
I have an app, developed in Xamarin Forms, which connects programmatically to a WIFI (with no internet access) exposed by an IoT device. This is the code I use to connect to the wifi network: NEHotspotConfiguration configuration = new NEHotspotConfiguration("ssid"); Device.BeginInvokeOnMainThread(() => { NEHotspotConfigurationManager.SharedManager.ApplyConfiguration(configuration, (NSError error) => { if (error != null) { if (error.LocalizedDescription == "already associated.") { // connected! CommunicateConnected(); } else { // not connected CommunicateNotConnected(); } } else { // connected! CommunicateNotConnected(); } }); }); Once the connection is successfully established the app performs some HTTP calls to the IP of the IoT device. Sometimes it happens that the HTTP calls go over the cellular data connection instead of WIFI connection (because the joined network has no internet connection?) and they fail. (Simply, I see that the 4G icon is still visible instead of the one representing the WIFI connection). The switch between mobile connection and WIFI connection, in these cases, happens after some minutes. Is there a way to force the HTTP calls to go over the just joined network?
Replies
3
Boosts
0
Views
1.8k
Activity
Apr ’22
Help understanding Bonjour service and installing on iPhone 12
My wife connects to Bonjour services on her android device through a wifi connection. I really don’t even know what it is, but the more read into it I’m slowly starting to understand. My issue is how do I get the Bonjour services to show up on my wifi scans so that I can connect to it? Or can I at all? I’m really noob at this stuff and I would love to understand. Is there an app I can get to gain access to it or does it require a more technical approach? Any help would be much appreciated.
Replies
2
Boosts
0
Views
2.4k
Activity
Apr ’22
Can I use the Multipeer connectivity framework to discover Bonjour services?
I know that the Multipeer Connectivity framework uses bonjour to discover local devices. Another app in our app suite uses a bonjour implementation for zeroconf. Can I use the Multipeer framework in a new application to discover the same services as the other apps in the suite without needing to modify the implementation in the other applications?
Replies
2
Boosts
0
Views
1k
Activity
Apr ’22
My app unexpectedly displays a local network privacy alert. Is it possible to explicitly deny without alert?
Hi team. Like the title, I'm figure out how to create my app so that I don't explicitly display local network privacy alerts. https://developer.apple.com/forums/thread/664116 This thread was a little helpful, but I couldn't find a clear way. Is there a way to automatically reject without explicitly displaying an alert, even if permission is required, such as plist settings? Thanks.
Replies
2
Boosts
0
Views
1.1k
Activity
Mar ’22
Building mDNSResponder for Windows 10
I would like to build mDNSResponder for Windows 10 so that we can distribute it with our Windows software. It's my understanding that the source code should be available here: https://opensource.apple.com/tarballs/mDNSResponder/ I've download the majority of the tarballs and found that none of the recent releases include the mDNSWindows" directory, which is referenced by the included Visual Studio solution. I've emailed opensource @ apple.com multiple times asking how I can obtain the missing sources but haven't received a response. Does anyone know why the Windows sources are missing from the tarballs or how to obtain them? Thanks, Michael
Replies
2
Boosts
0
Views
2.1k
Activity
Mar ’22
Bonjour for Windows installer
Hello, I have a question about below site. https://developer.apple.com/licensing-trademarks/bonjour/ In the Bonjour for Windows Bundling Agreement item Link to "Bonjour SDK for Windows" in No.1 is also linked to "Bonjour for Windows installer" in No.3 lists only "Bonjour SDK for Windows" in both. Are "Bonjour for Windows" and "Bonjour SDK for Windows" the same thing? Will I bundle "Bonjour SDK for Windows" instead of bundling "Bonjour for Windows installer" into a Windows application?
Replies
0
Boosts
0
Views
1.1k
Activity
Mar ’22
App Clips & Multipeer Connectivity
Hi! I have an app with Multipeer Connectivity setup and working properly. I now would like to add an app clip that is also able to connect to the main app target via Multipeer Connectivity. I've added the NSLocalNetworkUsageDescription as well as the NSBonjourServices to the app clip's info.plist, just like I did for the main app target, however when I run the app clip target, I get the following output at the Xcode console: [MCNearbyServiceBrowser] NSNetServiceBrowser did not search with error dict [{     NSNetServicesErrorCode = "-72008";     NSNetServicesErrorDomain = 10; }]. I'm now wondering if it is possible to have app clips leverage Multipeer Connectivity and, if so, what else I should do to resolve the issue. Thanks in advance!
Replies
3
Boosts
0
Views
1.5k
Activity
Mar ’22
Bonjour NWListener with changing domain name
Hi! I have to say I'm not experienced with network programming. Meanwhile, I'm happy my macOs app is doing mostly what it should with Network framework. What I noticed though is that, observing with DNS-SD, all other Bonjour Services on my system show the domain name "Felixs-iMac.local" whereas my app has something like c0d52654-4459-4373-a42d-778805c5107a.local with the string before .local changing on each run. I also noticed that the third party app that I connect my app to locally is not "remembering" my app after restarting. I can set manually "Remote Address" in that app to localhost or 127.0.0.1 and it reconnects next time. I wonder if this is related. How can I have my listener show up with a persitent host/domain name (not sure with terminology here..) so other apps can re-connect? Here's my code for the listener: // advertise Bonjour let udpOption = NWProtocolUDP.Options() let params = NWParameters(dtls: nil, udp: udpOption) if bonjour { params.includePeerToPeer = true } // create the listener listener = try! NWListener(using: params, on: 9001) // Bonjour service if bonjour { listener?.service = NWListener.Service(name: "ControlPilot", type: "_osc._udp", domain: nil, txtRecord: nil) }
Replies
2
Boosts
0
Views
1.4k
Activity
Feb ’22
Image which has been sent via AirDrop doesn’t offer Open In for my app
Sending PDF file via AirDrop give me a list of app to open file in. But in case of Image sending (JPG for example) im getting a Image Library by default. Is there a way to force system to send JPG to my app?
Replies
2
Boosts
0
Views
1.1k
Activity
Feb ’22
How do I implement low-latency streaming between two local iOS devices?
Hello, I'd like to know whether Multipeer Connectivity (MPC) between two modern iOS devices can support cross-streaming of video content at low latency and relatively high resolution. I learned from Ghostbusters that crossing the streams is a bad idea, but I need this for my app so I'm going to ignore their sage advice. The application I have in mind involves one iOS device (A) live-streaming a feed to another iOS device  (B) running the same app. At the same time, B is live streaming its own feed to A. Both feeds don't need to be crystal clear, but there has to be low latency. The sample code for "Streaming an AR Experience" seems to contain some answers, as it's based on MPC (and ARKit), but my project isn't quite AR and the latency seems high. If MPC isn't suitable for this task (as my searches seem to indicate), is it possible to have one device set up a hotspot and link the two this way to achieve my cross-streaming ambitions? This seems like a more conservative method, assuming the hotspot and its client behave like they're wifi peers (not sure). I might start a new thread with just this question if that's more appropriate. A third idea that's not likely to work (for various reasons) is data transfer over a lightning-lightning or lightning-usb-c connection. If I've missed any other possible solutions to my cross-streaming conundrum, please let me know. I've been reading around this subject on this forum as well and would be hugely grateful if Eskimo would grace me with his wisdom.
Replies
6
Boosts
0
Views
3.8k
Activity
Feb ’22
The issue is that the Bonjour error flooded the Windows Event log
Hello, We are using Bonjour service for browsing/announcing some services. Everything works fine except the windows event are flooded with Error - "DNSServiceResolve active for over two minutes. This place a considerable burden on the network". Please help here!!
Replies
0
Boosts
0
Views
762
Activity
Feb ’22
Bonjour Service Discovery using SwiftNIO
I’m working on cross platform IoT project that requires data between devices on the same WiFi network. Initially, SwiftNIO looked ideal but there appears to be no obvious way to broadcast and listen for a Bonjour service using SwiftNIO. Have I missed any obvious solution or can anyone give any pointers as to a good approach to take? The platforms I’m using are Linux, iOS, and MacOS. Apple's Network framework isn't supported on Linux so I ruled this out. Ideally, an approach using Swift but happy to consider other approaches.
Replies
1
Boosts
0
Views
1.7k
Activity
Jan ’22
local network alert with cellular data?
I have a local network alert with cellular data. why? How can I locate the cause?
Replies
4
Boosts
0
Views
1.3k
Activity
Jan ’22
NetServiceBrowser service always fails on iPhone if we create build from xcode 12
NetServiceBrowser service always fails on iPhone if we create build from xcode 12. // We are using following line in to start searching for sevices available on network //         self.serviceBrowser.searchForServices(ofType: "_http._tcp.", inDomain: "local.")    It return following error dicitonary : ["NSNetServicesErrorCode": -72008, "NSNetServicesErrorDomain": 10] I did not find -72008 in error codes for NSNetServicesErrorDomain. It works as exepcted with previous vesions of Xcode. With Xcode 12 it works only on Simulator.
Replies
6
Boosts
0
Views
4.8k
Activity
Jan ’22
What would be a good way to send some request from an Apple Watch to a user's MacOS devices?
I made a simple personal-use/testing watchOS app with a button that toggles the "mic muted" state of a chat application for Mac while on the same network. I'm now thinking about adapting this into a proper, distributable app with a companion Mac app. This has me wondering: Is there some solution in Apple's various frameworks that would allow me to "broadcast" a request of this sort from my watch, either over the cloud or over the local network, to my companion Mac app without much in the way of user configuration? My current solution of "make an HTTP request to the hardcoded URI of a server running on my Mac" obviously isn't adaptable to different users or devices. I considered Bonjour but it seems to be partially/fully deprecated and probably wouldn't let the user ensure only their own devices are controlled. Perhaps Handoff or something on CloudKit could be used for this purpose?
Replies
1
Boosts
0
Views
790
Activity
Nov ’21
how is multicast/mDNS handled with IOS native IKEv2 VPN
In short, I’m curious if multicast traffic (in general) is forwarded via IOS’s native IKEv2 VPN tunnel? (“road warrior”)… More specifically, I'm trying to understand how that may influence mDNS/Bonjour traffic? NOTE: The way that I am framing this discussion is inherently IPv4/IGMP-centric, although if there's a substantive IPv6 difference, that clarification would also be appreciated. Is there an obvious scenario where mDNS/SSDP/Bonjour name resolution of "something.local” or just “something” (hostname without FQDN) would be resolved on the IP-network associated with the physical ethernet interface / broadcast IP subnet of the end user Apple IOS device (either wifi or LTE), rather than the virtual interface of the VPN? For instance, if the IOS/BSD kernel processing expressly treats multicast differently from unicast traffic, then it’s conceivable that an IKEv2 tunnel could be established, and yet multicast could be operated in a “split-tunnel” mode where (intentionally, or even due to a race condition) mDNS/bonjour traffic emanates locally, or possibly across all interfaces, regardless of preferred-default route? I was hoping you would respond to this query with an answer like: The IKEv2 (road Warrior) VPN ensures all traffic, including broadcast + multicast are exclusively routed to the remote VPN endpoint, with no leakage... or There are known scenarios where multicast or broadcast traffic can operate effectively as a split-tunnel to the unicast traffic routing over the IKEv2 VPN, and if mDNS name resolution is of concern to you, you should review ________ for how to use MDM services to control that. Thank you!
Replies
1
Boosts
0
Views
2k
Activity
Nov ’21
DNSServiceNATPortMappingCreate now just fails on macOS 12
Calling DNSServiceNATPortMappingCreate returns kDNSServiceErr_NoError like expected but the port mapping actually fails right away in the callback. I'm calling this in a daemon via XPC. Are there new restrictions or permissions required?
Replies
13
Boosts
0
Views
2.9k
Activity
Nov ’21