package com.example.cezenPBX.service;

import com.example.cezenPBX.DTO.ReturnStatus;

public interface BasicPbxServiceInterface {

    public boolean createANewEndpointService(String id, String transport, String aors, String auth,
                                             String context, String disallow, String allow, String directMedia,
                                             String connectedLineMethod, String callerid, String dtmfMode,
                                             String mohsuggest, String mailboxes);


    // provided the user exists returns message of error or status
    public ReturnStatus addExtensionForUser(String context, String extension, int priority, String app, String appdata);

    public ReturnStatus addAPasswordForEndpoint(String id, String authType, String userName, String password, String md5Cred, String realm);

    public ReturnStatus setAors(String id, int maxContacts);

    public boolean deleteByExtension(String extensionNumber);

    // this method will allow the creation of global features azs long as 'extension' field is a literal character
    public ReturnStatus addFeaturesToExtensionsForEndpoints(String context, String extension, int priority, String app, String appdata);
}
