What's New / Connectivity & Hardware

What's new in TelephonyMessagingKit

+12 NewiOS

TelephonyMessagingKit provides RCS messaging APIs, including incoming message notifications, RCS service capabilities, and business messaging types such as welcome messages and capability negotiation between a device and an RCS service.

The 27 SDK adds 12 APIs with no deprecations or removals. New types are the WelcomeMessage and WelcomeMessageInformation structs, a Capabilities struct, and a Feature enum. New members include RCSService.Business (capabilities, welcomeMessage, Feature), RCSService.BusinessInformationRequest.welcomeMessageInformation, IncomingMessageNotification.requestedDispositions, and three RCSService.RemoteCapabilities flags: supportsExtendedMessagingReply, supportsExtendedMessagingReaction, and supportsExtendedMessagingCustomReaction.

New

12
extension

RCSService.Business.Feature

NewiOS
extension RCSService.Business.Feature : Hashable
Declaration
extension RCSService.Business.Feature : Hashable {
}
let

IncomingMessageNotification.requestedDispositions

NewiOS
public let requestedDispositions: [RCSMessage.Disposition]
let

RCSService.Business.capabilities

NewiOS
public let capabilities: RCSService.Business.Capabilities?
struct

RCSService.Business.Capabilities

NewiOS
public struct Capabilities : Codable, Equatable, Sendable

Structure containing details about a business' capabilities.

Declaration
public struct Capabilities : Codable, Equatable, Sendable {

    /// The business' application version.
    public let versionID: String

    /// The features supported by the business.
    public let supportedFeatures: [RCSService.Business.Feature]

    /// Returns a Boolean value indicating whether two values are equal.
    ///
    /// Equality is the inverse of inequality. For any values `a` and `b`,
    /// `a == b` implies that `a != b` is `false`.
    ///
    /// - Parameters:
    ///   - lhs: A value to compare.
    ///   - rhs: Another value to compare.
    public static func == (a: RCSService.Business.Capabilities, b: RCSService.Business.Capabilities) -> Bool

    /// Encodes this value into the given encoder.
    ///
    /// If the value fails to encode anything, `encoder` will encode an empty
    /// keyed container in its place.
    ///
    /// This function throws an error if any values are invalid for the given
    /// encoder's format.
    ///
    /// - Parameter encoder: The encoder to write data to.
    public func encode(to encoder: any Encoder) throws

    /// Creates a new instance by decoding from the given decoder.
    ///
    /// This initializer throws an error if reading from the decoder fails, or
    /// if the data read is corrupted or otherwise invalid.
    ///
    /// - Parameter decoder: The decoder to read data from.
    public init(from decoder: any Decoder) throws
}
enum

RCSService.Business.Feature

NewiOS
public enum Feature : Codable, Equatable, Sendable

Enumeration representing an RCS service feature supported by a business.

Declaration
public enum Feature : Codable, Equatable, Sendable {

    /// Business feature.
    case business

    /// Business Standalone feature.
    case businessStandalone

    ///  File Transfer feature.
    case fileTransfer

    ///  Chat feature.
    case chat

    ///  Geo Push feature.
    case geoPush

    ///  Reply feature.
    case reply

    ///  Reaction feature.
    case reaction

    ///  Custom Reaction feature.
    case customReaction

    /// Returns a Boolean value indicating whether two values are equal.
    ///
    /// Equality is the inverse of inequality. For any values `a` and `b`,
    /// `a == b` implies that `a != b` is `false`.
    ///
    /// - Parameters:
    ///   - lhs: A value to compare.
    ///   - rhs: Another value to compare.
    public static func == (a: RCSService.Business.Feature, b: RCSService.Business.Feature) -> Bool

    /// Encodes this value into the given encoder.
    ///
    /// If the value fails to encode anything, `encoder` will encode an empty
    /// keyed container in its place.
    ///
    /// This function throws an error if any values are invalid for the given
    /// encoder's format.
    ///
    /// - Parameter encoder: The encoder to write data to.
    public func encode(to encoder: any Encoder) throws

    /// Hashes the essential components of this value by feeding them into the
    /// given hasher.
    ///
    /// Implement this method to conform to the `Hashable` protocol. The
    /// components used for hashing must be the same as the components compared
    /// in your type's `==` operator implementation. Call `hasher.combine(_:)`
    /// with each of these components.
    ///
    /// - Important: In your implementation of `hash(into:)`,
    ///   don't call `finalize()` on the `hasher` instance provided,
    ///   or replace it with a different instance.
    ///   Doing so may become a compile-time error in the future.
    ///
    /// - Parameter hasher: The hasher to use when combining the components
    ///   of this instance.
    public func hash(into hasher: inout Hasher)

    /// The hash value.
    ///
    /// Hash values are not guaranteed to be equal across different executions of
    /// your program. Do not save hash values to use during a future execution.
    ///
    /// - Important: `hashValue` is deprecated as a `Hashable` requirement. To
    ///   conform to `Hashable`, implement the `hash(into:)` requirement instead.
    ///   The compiler provides an implementation for `hashValue` for you.
    public var hashValue: Int { get }

    /// Creates a new instance by decoding from the given decoder.
    ///
    /// This initializer throws an error if reading from the decoder fails, or
    /// if the data read is corrupted or otherwise invalid.
    ///
    /// - Parameter decoder: The decoder to read data from.

Truncated.

let

RCSService.Business.welcomeMessage

NewiOS
public let welcomeMessage: RCSService.Business.WelcomeMessage?
struct

RCSService.Business.WelcomeMessage

NewiOS
public struct WelcomeMessage : Codable, Equatable, Sendable

Structure containing details about a business' welcome message.

Declaration
public struct WelcomeMessage : Codable, Equatable, Sendable {

    public enum Content : Codable, Equatable, Sendable {

        /// Prefilled text content.
        case prefilledText(String)

        /// Card content.
        case card(RCSService.Business.Card)

        /// Card carousel content.
        case cardCarousel(RCSService.Business.CardCarousel)

        /// Returns a Boolean value indicating whether two values are equal.
        ///
        /// Equality is the inverse of inequality. For any values `a` and `b`,
        /// `a == b` implies that `a != b` is `false`.
        ///
        /// - Parameters:
        ///   - lhs: A value to compare.
        ///   - rhs: Another value to compare.
        public static func == (a: RCSService.Business.WelcomeMessage.Content, b: RCSService.Business.WelcomeMessage.Content) -> Bool

        /// Encodes this value into the given encoder.
        ///
        /// If the value fails to encode anything, `encoder` will encode an empty
        /// keyed container in its place.
        ///
        /// This function throws an error if any values are invalid for the given
        /// encoder's format.
        ///
        /// - Parameter encoder: The encoder to write data to.
        public func encode(to encoder: any Encoder) throws

        /// Creates a new instance by decoding from the given decoder.
        ///
        /// This initializer throws an error if reading from the decoder fails, or
        /// if the data read is corrupted or otherwise invalid.
        ///
        /// - Parameter decoder: The decoder to read data from.
        public init(from decoder: any Decoder) throws
    }

    /// The content of the message.
    public let content: RCSService.Business.WelcomeMessage.Content

    /// Returns a Boolean value indicating whether two values are equal.
    ///
    /// Equality is the inverse of inequality. For any values `a` and `b`,
    /// `a == b` implies that `a != b` is `false`.
    ///
    /// - Parameters:
    ///   - lhs: A value to compare.
    ///   - rhs: Another value to compare.
    public static func == (a: RCSService.Business.WelcomeMessage, b: RCSService.Business.WelcomeMessage) -> Bool

    /// Encodes this value into the given encoder.
    ///
    /// If the value fails to encode anything, `encoder` will encode an empty
    /// keyed container in its place.
    ///
    /// This function throws an error if any values are invalid for the given
    /// encoder's format.
    ///
    /// - Parameter encoder: The encoder to write data to.
    public func encode(to encoder: any Encoder) throws

    /// Creates a new instance by decoding from the given decoder.
    ///
    /// This initializer throws an error if reading from the decoder fails, or
    /// if the data read is corrupted or otherwise invalid.
    ///
    /// - Parameter decoder: The decoder to read data from.
    public init(from decoder: any Decoder) throws
}
var

RCSService.BusinessInformationRequest.welcomeMessageInformation

NewiOS
public var welcomeMessageInformation: RCSService.BusinessInformationRequest.WelcomeMessageInformation?
struct

RCSService.BusinessInformationRequest.WelcomeMessageInformation

NewiOS
public struct WelcomeMessageInformation : Sendable
Declaration
public struct WelcomeMessageInformation : Sendable {

    /// The Welcome Message identifier provided by a business.
    public var identifier: String

    /// The contextual information provided by a business for a specific Welcome Message.
    public var contextualInformation: String?

    public init(identifier: String, contextualInformation: String? = nil)
}
let

RCSService.RemoteCapabilities.supportsExtendedMessagingCustomReaction

NewiOS
public let supportsExtendedMessagingCustomReaction: Bool

Whether remote end supports extended messaging custom reaction feature.

let

RCSService.RemoteCapabilities.supportsExtendedMessagingReaction

NewiOS
public let supportsExtendedMessagingReaction: Bool

Whether remote end supports extended messaging reaction feature.

let

RCSService.RemoteCapabilities.supportsExtendedMessagingReply

NewiOS
public let supportsExtendedMessagingReply: Bool

Whether remote end supports extended messaging reply feature.

No APIs match your filter.

← More in Connectivity & Hardware