func NewStartTransactionRequest(connectorId int, idTag string, meterStart int, timestamp *types.DateTime) *StartTransactionRequest {
	return &StartTransactionRequest{ConnectorId: connectorId, IdTag: idTag, MeterStart: meterStart, Timestamp: timestamp}
}
Creates a new StartTransaction request. All signature parameters are required fields. Optional fields may be set directly on the created request.
package core
import (
	"github.com/lorenzodonini/ocpp-go/ocpp1.6/types"
	"reflect"
)
const StartTransactionFeatureName = "StartTransaction"
type StartTransactionRequest struct {
	ConnectorId   int             `json:"connectorId" validate:"gt=0"`
	IdTag         string          `json:"idTag" validate:"required,max=20"`
	MeterStart    int             `json:"meterStart" validate:"gte=0"`
	ReservationId *int            `json:"reservationId,omitempty" validate:"omitempty"`
	Timestamp     *types.DateTime `json:"timestamp" validate:"required"`
}
type StartTransactionConfirmation struct {
	IdTagInfo     *types.IdTagInfo `json:"idTagInfo" validate:"required"`
	TransactionId int              `json:"transactionId"`
}
type StartTransactionFeature struct{}
func (f StartTransactionFeature) GetFeatureName() string {
	return StartTransactionFeatureName
}
func (f StartTransactionFeature) GetRequestType() reflect.Type {
	return reflect.TypeOf(StartTransactionRequest{})
}
func (f StartTransactionFeature) GetResponseType() reflect.Type {
	return reflect.TypeOf(StartTransactionConfirmation{})
}
func (r StartTransactionRequest) GetFeatureName() string {
	return StartTransactionFeatureName
}
func (c StartTransactionConfirmation) GetFeatureName() string {
	return StartTransactionFeatureName
}