---
title: "incomingServiceUpdatePush(channelManager:channelUUID:pushPayload:isHighPriority:remainingHighPriorityBudget:completion:)"
framework: pushtotalk
role: symbol
role_heading: Instance Method
path: "pushtotalk/ptchannelmanagerdelegate/incomingserviceupdatepush(channelmanager:channeluuid:pushpayload:ishighpriority:remaininghighprioritybudget:completion:)"
---

# incomingServiceUpdatePush(channelManager:channelUUID:pushPayload:isHighPriority:remainingHighPriorityBudget:completion:)

Extracts the service update data from the notification’s payload to perform the relevant task for that data.

## Declaration

```swift
optional func incomingServiceUpdatePush(channelManager: PTChannelManager, channelUUID: UUID, pushPayload: [String : Any], isHighPriority: Bool, remainingHighPriorityBudget: Int, completion: @escaping @Sendable () -> Void)
```

```swift
optional func incomingServiceUpdatePush(channelManager: PTChannelManager, channelUUID: UUID, pushPayload: [String : Any], isHighPriority: Bool, remainingHighPriorityBudget: Int) async
```

## Parameters

- `channelManager`: The channel manager.
- `channelUUID`: The channel identifier.
- `pushPayload`: The push payload metadata.
- `isHighPriority`: A flag indicating if this notification is a high priority.
- `remainingHighPriorityBudget`: Monitors the number of remaining high-priority push notifications available to your app. Use low-priority push notifications (priority <= 5) whenever possible, as they aren’t subject to a budget limit.
- `completion`: Execute to inform the Push to Talk framework you’ve finished your task.

## Discussion

Discussion important: You can call this method from synchronous code using a completion handler, as shown on this page, or you can call it as an asynchronous method that has the following declaration: optional func incomingServiceUpdatePush(channelManager: PTChannelManager, channelUUID: UUID, pushPayload: [String : Any], isHighPriority: Bool, remainingHighPriorityBudget: Int) async For information about concurrency and asynchronous code in Swift, see Calling Objective-C APIs Asynchronously.

## See Also

### Beginning or ending transmission

- [channelManager(_:channelUUID:didBeginTransmittingFrom:)](pushtotalk/ptchannelmanagerdelegate/channelmanager(_:channeluuid:didbegintransmittingfrom:).md)
- [channelManager(_:channelUUID:didEndTransmittingFrom:)](pushtotalk/ptchannelmanagerdelegate/channelmanager(_:channeluuid:didendtransmittingfrom:).md)
- [channelManager(_:failedToBeginTransmittingInChannel:error:)](pushtotalk/ptchannelmanagerdelegate/channelmanager(_:failedtobegintransmittinginchannel:error:).md)
- [channelManager(_:failedToStopTransmittingInChannel:error:)](pushtotalk/ptchannelmanagerdelegate/channelmanager(_:failedtostoptransmittinginchannel:error:).md)
