Structures

The following structures are available globally.

Meeting JSON Page Parser

  • This struct will contain one page of results from a meeting search, and is one of the response parameters to the QueryResultCompletion completion callback.

    This is a baseline parser; it doesn’t really do anything more than make a simple map of the input JSON into an array of structs. It doesn’t change the sorting, and provides a read-only, struct property view.

    The parser then automatically populates a meta instance, that reports the page metadata from the server, and a meetings array, of all meeting instances, and some functional interfaces.

    Supported Systems

    This will support iOS 16 (and greater), iPadOS 16 (and greater), tvOS 16 (and greater), macOS 13 (and greater), and watchOS 9 (and greater)

    This requires Swift 5 or greater.

    Usage

    Do not instantiate this type. That’s handled by a SwiftBMLSDK_Query instance that performs a search, and returns an instance of this struct.

    Dependencies

    This parser has no dependencies, other than the Foundation, CoreLocation, and Contacts SDKs, provided by Apple.

    See more

    Declaration

    Swift

    public struct SwiftBMLSDK_Parser : Encodable

Meeting Search Query And Communication

  • This struct is for generating queries to instances of LGV_MeetingServer, and returning the parsed results.

    It is designed for minimal filtering. Most filter parameters are for paging the search, or filtering for specific meeting types. Most filtering should be performed on the results.

    This is the “working” part of the SwiftBMLSDK system. You instantiate an instance of this struct, and everything else comes from that.

    Supported Systems

    This will support iOS 16 (and greater), iPadOS 16 (and greater), tvOS 16 (and greater), macOS 13 (and greater), and watchOS 9 (and greater)

    This requires Swift 5 or greater.

    Usage

    Instantiate this struct with a URL to an LGV_MeetingServer implementation.

    For example:

    SwiftBMLSDK_Query(serverBaseURI: URL(string: "https://littlegreenviper.com/LGV_MeetingServer/Tests/entrypoint.php"))

    creates an instance, based on the LGV test server.

    Once the struct is instantiated, it can then be queried. Responses to queries are a SwiftBMLSDK_Parser instance, which contains and interprets the found set.

    There are limited parameters to queries, as it is expected that most of the filtering and sorting will be performed on the found set of meeting instances.

    Querying the Server

    There are only two public query methods:

    • serverInfo(completion:) This is a method that fetches the general information structure from the server, and presents it as a ServerInfo struct.

    • meetingSearch(specification:completion:) This actually queries the server for a set of meetings, based on a SearchSpecification instance, and provides an instance of SwiftBMLSDK_Parser to a completion function.

    Dependencies

    This type has no dependencies, other than the Foundation and CoreLocation SDKs, provided by Apple.

    See more

    Declaration

    Swift

    public struct SwiftBMLSDK_Query