# MSC indicating how a model is interacted with

msc {

    hscale = "1.5";

    app [label="Application"], access[label="Access layer"];

    |||;
    --- [label="Allocate a model in the access layer and bind to an element" ];
    app => access [label="access_model_add(&model_params, &model_handle)" ];
    app << access [label="NRF_SUCCESS" ];

    |||;
    ...[label="Device is provisioned and configured..."];

    |||;
    --- [label="Send message to another device (client to server)" ];
    app => access [label="access_model_publish(handle, &message)" ];
    ...;
    app <<= access [label="opcode_cb(handle, p_message, p_args)"];
    app => access [label="access_model_reply(handle, p_message, &reply)"];
}